package com.jumi.microservice.dto;

import com.jumi.microservice.common.base.dto.BaseRequest;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author Dirk
 * @Date 2021-01-15 13:01
 */
public class CouponOrderMessage extends BaseRequest {
    private static final long serialVersionUID = 6468218280776579424L;

    /**
     * 优惠券订单ID
     */
    private Integer id;

    /**
     * 用户ID
     */
    private Long uid;

    /**
     * 商品ID
     */
    private Long goodsId;

    /**
     * 商品标题
     */
    private String goodsTitle;

    /**
     * 商品图片
     */
    private String goodsImage;

    /**
     * 商品价格
     */
    private BigDecimal goodsPrice;

    /**
     * 商品数量
     */
    private Integer goodsQuantity;

    /**
     * 订单编号
     */
    private String orderSn;

    /**
     * 聚米订单状态: 1 已付款, 2 已结算, 3 已失效
     */
    private Byte couponOrderStatus;

    /**
     * 订单状态
     */
    private Byte orderStatus;

    /**
     * 订单状态描述
     */
    private String orderStatusDesc;

    /**
     * 订单创建时间
     */
    private Date orderTime;

    /**
     * 付款金额
     */
    private BigDecimal payAmount;

    /**
     * 订单支付时间
     */
    private Date payTime;

    /**
     * 结算金额
     */
    private BigDecimal settlementAmount;


    /**
     * 佣金比例
     */
    private BigDecimal promotionRate;

    /**
     * 佣金金额
     */
    private BigDecimal promotionAmount;

    /**
     * 订单来源，1 淘宝， 2 京东， 3 拼多多
     */
    private Byte source;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Long getUid() {
        return uid;
    }

    public void setUid(Long uid) {
        this.uid = uid;
    }

    public Long getGoodsId() {
        return goodsId;
    }

    public void setGoodsId(Long goodsId) {
        this.goodsId = goodsId;
    }

    public String getGoodsTitle() {
        return goodsTitle;
    }

    public void setGoodsTitle(String goodsTitle) {
        this.goodsTitle = goodsTitle;
    }

    public String getGoodsImage() {
        return goodsImage;
    }

    public void setGoodsImage(String goodsImage) {
        this.goodsImage = goodsImage;
    }

    public BigDecimal getGoodsPrice() {
        return goodsPrice;
    }

    public void setGoodsPrice(BigDecimal goodsPrice) {
        this.goodsPrice = goodsPrice;
    }

    public Integer getGoodsQuantity() {
        return goodsQuantity;
    }

    public void setGoodsQuantity(Integer goodsQuantity) {
        this.goodsQuantity = goodsQuantity;
    }

    public String getOrderSn() {
        return orderSn;
    }

    public void setOrderSn(String orderSn) {
        this.orderSn = orderSn;
    }

    public Byte getCouponOrderStatus() {
        return couponOrderStatus;
    }

    public void setCouponOrderStatus(Byte couponOrderStatus) {
        this.couponOrderStatus = couponOrderStatus;
    }

    public Byte getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(Byte orderStatus) {
        this.orderStatus = orderStatus;
    }

    public String getOrderStatusDesc() {
        return orderStatusDesc;
    }

    public void setOrderStatusDesc(String orderStatusDesc) {
        this.orderStatusDesc = orderStatusDesc;
    }

    public Date getOrderTime() {
        return orderTime;
    }

    public void setOrderTime(Date orderTime) {
        this.orderTime = orderTime;
    }

    public BigDecimal getPayAmount() {
        return payAmount;
    }

    public void setPayAmount(BigDecimal payAmount) {
        this.payAmount = payAmount;
    }

    public Date getPayTime() {
        return payTime;
    }

    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }

    public BigDecimal getSettlementAmount() {
        return settlementAmount;
    }

    public void setSettlementAmount(BigDecimal settlementAmount) {
        this.settlementAmount = settlementAmount;
    }

    public BigDecimal getPromotionRate() {
        return promotionRate;
    }

    public void setPromotionRate(BigDecimal promotionRate) {
        this.promotionRate = promotionRate;
    }

    public BigDecimal getPromotionAmount() {
        return promotionAmount;
    }

    public void setPromotionAmount(BigDecimal promotionAmount) {
        this.promotionAmount = promotionAmount;
    }

    public Byte getSource() {
        return source;
    }

    public void setSource(Byte source) {
        this.source = source;
    }
}
